This specification relates to search query processing.
The Internet provides access to a wide variety of resources, for example, video files, image files, audio files, or Web pages, including content for particular subjects, book articles, or news articles. A search system can select one or more resources in response to receiving a search query. A search query is data that a user submits to a search engine to satisfy the user's informational needs. The search queries are usually in the form of text, e.g., one or more query terms. The search system selects and scores resources based on their relevance to the search query and on their importance relative to other resources to provide search results that link to the selected resources. The search results are typically ordered according to the scores and presented according to this order.
Search systems can provide query suggestions to users to help users satisfy their informational needs. As used herein, the term “query suggestion” is suggested data for a query that is used to refine a search query or refine a search strategy. Some search systems provide query suggestions in the form of a list of queries as the user is typing a query. The user can select one of the query suggestions from the list without having to type the entire query suggestion. A client device typically sends suggestion requests to a search engine with each keystroke, and the search engine provides the query suggestions with prefixes that match the entered characters. Once received, the client device displays these suggestions for user selection.
Some search systems also provide search results with query suggestions. The search results that are provided are, for example, search results that are responsive to suggestions that are determined to be the best match for a current query input.
However, for unusual or rare queries, which are referred to as “long-tail” queries, providing accurate query suggestions can be a challenge. Furthermore, as query suggestions for long-tail queries may be nonexistent, search results responsive to the query suggestions cannot be provided. While the search system can immediately provide search results for each of the completed words in the long-tail query that the user in inputting into a search interface, doing so with every keystroke may actually degrade the user experience, as many of the search results for the incomplete long-tail query may not be of interest to the user.